package com.td.module.produce.controller.admin.info.vo;

import com.td.framework.common.pojo.PageParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDateTime;

import static com.td.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@ApiModel("管理后台 - 生产管理基础信息分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class InfoPageReqVO extends PageParam {

    @ApiModelProperty(value = "作物种类")
    private Integer cropSpecie;

    @ApiModelProperty(value = "作物品种")
    private String cropVarieties;

    @ApiModelProperty(value = "地块编码")
    private String landCode;

    @ApiModelProperty(value = "种植面积")
    private BigDecimal plantArea;

    @ApiModelProperty(value = "种子名称", example = "JinRui")
    private String seedName;

    @ApiModelProperty(value = "使用量（袋）")
    private Integer usage;

    @ApiModelProperty(value = "生产模型二级id", example = "21218")
    private Long growthId;

    @ApiModelProperty(value = "种植标准")
    private Integer plantStandards;

    @ApiModelProperty(value = "种植环境")
    private Integer plantEnvironment;

    @ApiModelProperty(value = "种植时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] plantTime;

    @ApiModelProperty(value = "采收时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] harvestTime;

    @ApiModelProperty(value = "定植时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] colonizationTime;

    @ApiModelProperty(value = "种植状态", example = "2")
    private Integer plantStatus;

    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}
